<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "DTD/xhtml1-transitional.dtd">
<!-- This page is only XHTML 1.0 Transitional and not Strict because iframes are in use -->
<html xmlns="http://www.w3.org/1999/xhtml">
  <head>
    <title>YaCy '#[clientname]#': Integration of a Search Portal</title>
    #%env/templates/metas.template%#
  </head>
  <body id="ConfigSkins">
    #%env/templates/header.template%#
    #%env/templates/submenuPortalConfiguration.template%#
    <h2>Integration of a Search Portal</h2>
    <p>
      If you like to integrate YaCy as portal for your web pages, you may want to change icons and messages on the search page.
      The search page may be customized. You can change the 'corporate identity'-images, the greeting line
      and a link to a home page that is reached when the 'corporate identity'-images are clicked.
      To change also colours and styles use the <a href="ConfigAppearance_p.html">Appearance Servlet</a> for different skins and languages.
    </p>
    <form action="ConfigPortal_p.html" method="post" enctype="multipart/form-data" id="ConfigPortal" accept-charset="UTF-8">
	  <input type="hidden" name="transactionToken" value="#[transactionToken]#"/>
      <fieldset>
        <dl>
          <dt>Greeting Line</dt>
          <dd><input type="text" name="promoteSearchPageGreeting" id="promoteSearchPageGreeting" value="#[promoteSearchPageGreeting]#" size="60" /></dd>
          
          <dt>URL of Home Page</dt>
          <dd><input type="text" name="promoteSearchPageGreeting.homepage" value="#[promoteSearchPageGreeting.homepage]#" size="60" /></dd>
          
          <dt>URL of a Small Corporate Image</dt>
          <dd><input type="text" name="promoteSearchPageGreeting.smallImage" value="#[promoteSearchPageGreeting.smallImage]#" size="60" /></dd>
          
          <dt>URL of a Large Corporate Image</dt>
          <dd><input type="text" name="promoteSearchPageGreeting.largeImage" value="#[promoteSearchPageGreeting.largeImage]#" size="60" /></dd>
          
          <dt>Alternative text for Corporate Images</dt>
          <dd><input type="text" name="promoteSearchPageGreeting.imageAlt" value="#[promoteSearchPageGreeting.imageAlt]#" size="60" /></dd>
          
          <dt>Enable Search for Everyone?</dt>
          <dd>
          <input type="radio" name="publicSearchpage" value="true" #(publicSearchpage)#::checked="checked"#(/publicSearchpage)# />Search is available for everyone&nbsp;
          <input type="radio" name="publicSearchpage" value="false" #(publicSearchpage)#checked="checked"::#(/publicSearchpage)# />Only the administator is allowed to search
          </dd>
          
          <dt>Show Navigation Bar on Search Page?</dt>
          <dd>
          <input type="radio" name="publicTopmenu" value="true" #(publicTopmenu)#::checked="checked"#(/publicTopmenu)# />Show Navigation Top-Menu&nbsp;
          <input type="radio" name="publicTopmenu" value="false" #(publicTopmenu)#checked="checked"::#(/publicTopmenu)# />no link to YaCy Menu (admin must navigate to /Status.html manually)
          </dd>
          
          <dt>Show Advanced Search Options on Search Page?</dt>
          <dd>
          <input type="radio" name="search.options" value="true" #(search.options)#::checked="checked"#(/search.options)# />Show Advanced Search Options on index.html&nbsp;
          <input type="radio" name="search.options" value="false" #(search.options)#checked="checked"::#(/search.options)# />do not show Advanced Search
          </dd>
          
          <dt>Media Search</dt>
          <dd>
          	<label>
          		<input type="radio" name="search.strictContentDom" value="false" #(search.strictContentDom)#checked="checked"::#(/search.strictContentDom)# />Extended
          	</label>
          	<label>
          		<input type="radio" name="search.strictContentDom" value="true" #(search.strictContentDom)#::checked="checked"#(/search.strictContentDom)# />Strict
          	</label>
          	<p>Control whether media search results are as default strictly limited to indexed documents matching exactly the desired content domain  (images, videos or applications specific), 
          		or extended to pages including such medias (provide generally more results, but eventually less relevant).
          	</p>
          </dd>
          
          <dt>Remote results resorting</dt>
          <dd>
          	<label title="Remote results resorting can be triggered once the 'Refresh sorting' button (near the 'Search' button) becomes available.">
          		<input type="radio" name="search.jsresort" value="false" #(search.jsresort)#checked="checked"::#(/search.jsresort)# />On demand, server-side
          	</label>
          	<label title="This usually improves ranking accuracy, but doesn't work well for users who have Javascript disabled, are using screen readers, or are on slow computers.">
          		<input type="radio" name="search.jsresort" value="true" #(search.jsresort)#::checked="checked"#(/search.jsresort)# />Automated, with JavaScript in the browser.
          	</label>
          	<p>Automated results resorting with JavaScript makes the browser load the full result set of each search request.
          	This may lead to high system loads on the server. 
          	Please check the 'Peer-to-peer search with JavaScript results resorting' section in the <a href="SearchAccessRate_p.html">Local Search access rate</a> configuration page to set up proper limitations on this mode by unauthenticated users.</p>
          </dd>
          
          <dt>Remote search encryption</dt>
          <dd>
          	<label>
          		<input type="checkbox" name="remotesearch.https.preferred" value="true" #(remotesearch.https.preferred)#::checked="checked"#(/remotesearch.https.preferred)# />Prefer https for search queries on remote peers.
          	</label>
          	When SSL/TLS is enabled on remote peers, https should be used to encrypt data exchanged with them when performing peer-to-peer searches. 
          	Please note that contrary to strict TLS, certificates are not validated against trusted certificate authorities (CA), thus allowing YaCy peers to use self-signed certificates. 
          </dd>
          
          <dt>Snippet Fetch Strategy &amp; Link Verification</dt>
          <dd>
          <img src="env/grafics/idea.png" width="32" height="32" alt="idea" align="center"/>Speed up search results with this option! (use CACHEONLY or FALSE to switch off verification)<br/>
          #(debug.snippets.statistics.enabled)#<i>Statistics on text snippets generation can be enabled in the <a href="Settings_p.html?page=debug">Debug/Analysis Settings</a> page.</i>
          ::<div class="info" style="float:left; margin-right : 0.1em;">
        	<img src="env/grafics/i16.gif" width="16" height="16" alt="Detailed statistics"/>
        	<div class="infobox">
        		Counts by origin :
        		<ul>
        			<li>#[totalFromSolr]# provided by Solr</li>
        			<li>#[totalFromCache]# from cache</li>
        			<li>#[totalFromMetadata]# computed from indexed metadata</li>
        			<li>#[totalFromWeb]# from original documents fetched and parsed</li>
        			<li>#[totalFailures]# failures</li>
        		</ul>
        	</div>
          </div>
          <i>#[totalSnippets]# text snippets were generated since last server startup, in a mean time of #[snippetsMeanTime]# and a maximum of #[snippetsMaxTime]#.</i>
          #(/debug.snippets.statistics.enabled)#
          <br/>
          <input type="radio" name="search.verify" value="nocache" #(search.verify.nocache)#::checked="checked"#(/search.verify.nocache)# onclick="document.getElementById('search_verify_delete').disabled=false;document.getElementById('search_verify_delete').checked=true;"/> NOCACHE: no use of web cache, load all snippets online<br/>
          <input type="radio" name="search.verify" value="iffresh" #(search.verify.iffresh)#::checked="checked"#(/search.verify.iffresh)# onclick="document.getElementById('search_verify_delete').disabled=false;document.getElementById('search_verify_delete').checked=true;"/> IFFRESH: use the cache if the cache exists and is fresh otherwise load online<br/>
          <input type="radio" name="search.verify" value="ifexist" #(search.verify.ifexist)#::checked="checked"#(/search.verify.ifexist)# onclick="document.getElementById('search_verify_delete').disabled=false;document.getElementById('search_verify_delete').checked=true;"/> IFEXIST: use the cache if the cache exist or load online<br/>
          <input type="checkbox" name="search.verify.delete" id="search_verify_delete" value="true" #(search.verify.delete)#::checked="checked"#(/search.verify.delete)# /> If verification fails, delete index reference<br/><br/>
          <input type="radio" name="search.verify" value="cacheonly" #(search.verify.cacheonly)#::checked="checked"#(/search.verify.cacheonly)# onclick="document.getElementById('search_verify_delete').disabled=true;document.getElementById('search_verify_delete').checked=false;"/> CACHEONLY: never go online, use all content from cache. If no cache entry exist, consider content nevertheless as available and show result without snippet<br/>
          <input type="radio" name="search.verify" value="false" #(search.verify.false)#::checked="checked"#(/search.verify.false)# onclick="document.getElementById('search_verify_delete').disabled=true;document.getElementById('search_verify_delete').checked=false;"/> FALSE: no link verification and not snippet generation: all search results are valid without verification
          </dd>
          
          <dt>Greedy Learning Mode</dt>
          <dd>
              <input type="checkbox" name="greedylearning.active" value="true" #(greedylearning.active)#::checked="checked"#(/greedylearning.active)# /> load documents linked in search results, will be deactivated automatically when index size &gt; #[greedylearning.limit.doccount]#  <small> (see <a href="ConfigHeuristics_p.html">Heuristics: search-result</a> to use this permanent)</small>
          </dd>
          
          <dt>Index remote results</dt>
          <dd>
              <input type="checkbox" name="remotesearch.result.store" value="true" #(remotesearch.result.store)#::checked="checked"#(/remotesearch.result.store)# /> add remote search results to the local index <b>( default=on, it is recommended to enable this option ! )</b>
          </dd>
          <dt>Limit size of indexed remote results</dt>
          <dd>
			  <input type="text" name="remotesearch.result.store.maxsize" value="#[remotesearch.result.store.maxsize]#" size="10" /> maximum allowed size in kbytes for each remote search result to be added to the local index (for example, a 1000kbytes limit might be useful if you are running YaCy with a low memory setup)
          </dd>
          
          <dt>Default Pop-Up Page</dt>
          <dd>
          <input type="radio" name="popup" value="status" #(popupStatus)#::checked="checked"#(/popupStatus)# />Status Page&nbsp;
          <input type="radio" name="popup" value="front" #(popupFront)#::checked="checked"#(/popupFront)# />Search Front Page&nbsp;
          <input type="radio" name="popup" value="search" #(popupSearch)#::checked="checked"#(/popupSearch)# />Search Page (small header)&nbsp;
          <input type="radio" name="popup" value="interactive" #(popupInteractive)#::checked="checked"#(/popupInteractive)# />Interactive Search Page&nbsp;
          </dd>
          
          <dt>Default maximum number of results per page</dt>
          <dd><input type="text" name="maximumRecords" value="#[maximumRecords]#" size="3" /></dd>

          <dt>Default index.html Page (by forwarder)</dt>
          <dd><input type="text" name="indexForward" value="#[indexForward]#" size="60" /></dd>
          
          <dt>Target for Click on Search Results</dt>
          <dd>
          <select name="target">
            <option value="_blank" #(target_selected_blank)#::selected="selected"#(/target_selected_blank)#>"_blank" (new window)</option>
            <option value="_self" #(target_selected_self)#::selected="selected"#(/target_selected_self)#>"_self" (same window)</option>
            <option value="_parent" #(target_selected_parent)#::selected="selected"#(/target_selected_parent)#>"_parent" (the parent frame of a frameset)</option>
            <option value="_top" #(target_selected_top)#::selected="selected"#(/target_selected_top)#>"_top" (top of all frames)</option>
            <option value="searchresult" #(target_selected_searchresult)#::selected="selected"#(/target_selected_searchresult)#>"searchresult" (a default custom page name for search results)</option>
          </select>
          </dd>
          
          <dt>Special Target as Exception for an URL-Pattern</dt>
          <dd>
          <select name="target_special">
            <option value="_blank" #(target_selected_special_blank)#::selected="selected"#(/target_selected_special_blank)#>"_blank" (new window)</option>
            <option value="_self" #(target_selected_special_self)#::selected="selected"#(/target_selected_special_self)#>"_self" (same window)</option>
            <option value="_parent" #(target_selected_special_parent)#::selected="selected"#(/target_selected_special_parent)#>"_parent" (the parent frame of a frameset)</option>
            <option value="_top" #(target_selected_special_top)#::selected="selected"#(/target_selected_special_top)#>"_top" (top of all frames)</option>
            <option value="searchresult" #(target_selected_special_searchresult)#::selected="selected"#(/target_selected_special_searchresult)#>"searchresult" (a default custom page name for search results)</option>
          </select>
          &nbsp;Pattern:<input type="text" name="target_special_pattern" value="#[target_special_pattern]#" size="30" />
          </dd>
          
          <dt>Exclude Hosts</dt>
          <dd>List of hosts that shall be excluded from search results by default but can be included using the site:&lt;host&gt; operator:<br/>
          <input type="text" name="search.excludehosts" value="#[search.excludehosts]#" size="60" /><br/>
          #[search.excludehosth]#
          </dd>
          
          <dt>'About' Column<br/>(shown in a column alongside<br/>with the search result page)</dt>
          <dd><input type="text" name="about.headline" value="#[about.headline]#" size="60" />(Headline)</br>
          <textarea name="about.body" cols="60" rows="8">#[about.body]#</textarea>(Content)
          </dd>
          
         <dt>&nbsp;</dt>
          <dd>
            <input type="submit" name="searchpage_set" value="Change Search Page" class="btn btn-primary"/>&nbsp;&nbsp;
            <input type="submit" name="searchpage_default" value="Set to Default Values" class="btn btn-primary"/>
            <p>You have to <a href="ConfigAccounts_p.html">set a remote user/password</a> to change this options.</p>
          </dd>
        </dl>
      </fieldset>
    </form>
    
    <h3>
      The search page can be integrated in your own web pages with an iframe. Simply use the following code:
    </h3>
    <fieldset><pre>
      &lt;iframe name=&quot;target&quot;
       src=&quot;#[myContext]#/index.html?display=2&amp;resource=local&quot;
       width=&quot;100%&quot;
       height=&quot;410&quot;
       frameborder=&quot;0&quot;
       scrolling=&quot;auto&quot;
       id=&quot;target&quot;&gt; 
      &lt;/iframe&gt;  
    </pre></fieldset>
    This would look like:
    <iframe name="target"
       src="index.html?display=2&amp;resource=local&amp;focus=0"
       width="100%"
       height="410"
       frameborder="0"
       scrolling="auto"
       id="target">
      </iframe>
    
    <h3>
      For a search page with a small header, use this code:
    </h3>
    <fieldset><pre>
      &lt;iframe name=&quot;target2&quot;
       src=&quot;#[myContext]#/yacysearch.html?display=2&amp;resource=local&quot;
       width=&quot;100%&quot;
       height=&quot;180&quot;
       frameborder=&quot;0&quot;
       scrolling=&quot;auto&quot;
       id=&quot;target2&quot;&gt; 
      &lt;/iframe&gt;  
    </pre></fieldset>
    This would look like:
    <iframe name="target2"
       src="yacysearch.html?display=2&amp;resource=local&amp;focus=0"
       width="100%"
       height="180"
       frameborder="0"
       scrolling="auto"
       id="target2"
       onfocus="removeFocus(this);">
      </iframe>
      
    <h3>
      A third option is the interactive search. Use this code:
    </h3>
    <fieldset><pre>
      &lt;iframe name="target3"
       src=&quot;#[myContext]#/yacyinteractive.html?display=2&quot;
       width=&quot;100%&quot;
       height=&quot;180&quot;
       frameborder=&quot;0&quot;
       scrolling=&quot;auto&quot;
       id=&quot;target3&quot;&gt; 
      &lt;/iframe&gt;  
    </pre></fieldset>
    This would look like:
    <iframe name="target3"
       src="yacyinteractive.html?display=2&amp;focus=0"
       width="100%"
       height="180"
       frameborder="0"
       scrolling="auto"
       id="target3"
       onfocus="removeFocus(this);">
      </iframe>
    
    #%env/templates/footer.template%#
  </body>
</html>
